home *** CD-ROM | disk | FTP | other *** search
/ IRIX 6.5 Complementary Applications 2004 February / SGI IRIX 6.5 Complementary Applications 2004 February.iso / dist / cde.idb / usr / dt / share / man / cat1 / dtcodegen.z.z / dtcodegen.z / dtcodegen
Encoding:
Text File  |  2003-11-18  |  20.1 KB  |  397 lines

  1.  
  2.  
  3.  
  4.      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))      UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((1111    AAAAuuuugggguuuusssstttt 1111999999995555))))      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))
  5.  
  6.  
  7.  
  8.      NNNNAAAAMMMMEEEE
  9.       dtcodegen - generate code from a CDE application building
  10.       services project or module file
  11.  
  12.      SSSSYYYYNNNNOOOOPPPPSSSSIIIISSSS
  13.       ddddttttccccooooddddeeeeggggeeeennnn [[[[----cccchhhhaaaannnnggggeeeedddd]]]] [[[[----mmmmaaaaiiiinnnn]]]] [[[[----mmmmeeeerrrrggggeeee]]]]    [[[[----nnnnoooommmmeeeerrrrggggeeee]]]]
  14.       [[[[----mmmmoooodddduuuulllleeee _m_y_m_o_d]]]] [[[[----pppp||||----pppprrrroooojjjjeeeecccctttt _m_y_p_r_o_j]]]] [[[[----nnnnpppp||||----nnnnoooopppprrrroooojjjjeeeecccctttt]]]]
  15.       [[[[----sssshhhhoooowwwwaaaallllllll]]]] [[[[----nnnnoooosssshhhhoooowwwwaaaallllllll]]]] [[[[----ssss||||----ssssiiiilllleeeennnntttt]]]] [[[[----vvvv||||----vvvveeeerrrrbbbboooosssseeee]]]]
  16.       [[[[_f_i_l_e    ............]]]]
  17.  
  18.       ddddttttccccooooddddeeeeggggeeeennnn ----hhhheeeellllpppp
  19.  
  20.      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  21.       The ddddttttccccooooddddeeeeggggeeeennnn    utility    reads Builder Interface    Language (BIL)
  22.       files    created    by the CDE application building    services
  23.       graphical user interface and produces    C, Motif and CDE
  24.       source code for the user interface and application elements
  25.       defined.  The    BIL files supplied can be individual module
  26.       files    (files with a ....bbbbiiiillll suffix) or a    project    file (files
  27.       with a ....bbbbiiiipppp suffix) that contains references to zero or more
  28.       module files.
  29.  
  30.      OOOOPPPPTTTTIIIIOOOONNNNSSSS
  31.       The following    options    are available:
  32.  
  33.          ----cccchhhhaaaannnnggggeeeedddd
  34.            Generate only source    code for those modules that
  35.            have    changed    since the last time ddddttttccccooooddddeeeeggggeeeennnn was run.
  36.  
  37.          ----hhhheeeellllpppp
  38.            Write a help    message    to standard output explaining
  39.            all ddddttttccccooooddddeeeeggggeeeennnn options and then terminate.
  40.  
  41.          ----mmmmaaaaiiiinnnn
  42.            Produce the project files associated    with the
  43.            application's mmmmaaaaiiiinnnn()    routine.
  44.  
  45.          ----mmmmeeeerrrrggggeeee
  46.            Merge generated stubs files with previous versions,
  47.            perpetuating    changes    made or    custom edits done to
  48.            the previous    stubs file.  This is the default
  49.            behavior.
  50.  
  51.          ----nnnnoooommmmeeeerrrrggggeeee
  52.            Do not merge    existing and new ____ssssttttuuuubbbbssss....cccc files.  This
  53.            option overrides the    default    merging    behavior.  If
  54.            both    ----mmmmeeeerrrrggggeeee and ----nnnnoooommmmeeeerrrrggggeeee are    used, the one given
  55.            last    on the command line takes precedence.
  56.  
  57.          ----mmmmoooodddduuuulllleeee _m_y_m_o_d
  58.            Generate code for the module    _m_y_m_o_d, (which is
  59.            expected to be defined in the file _m_y_m_o_d ....bbbbiiiillll).
  60.  
  61.  
  62.  
  63.      Page 1                        (printed 11/11/03)
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))      UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((1111    AAAAuuuugggguuuusssstttt 1111999999995555))))      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))
  71.  
  72.  
  73.  
  74.            Using multiple ----mmmmoooodddduuuulllleeee options includes multiple
  75.            modules in the generated code.
  76.  
  77.          ----pppp||||----pppprrrroooojjjjeeeecccctttt _m_y_p_r_o_j
  78.            Generate code for the project _m_y_p_r_o_j, (which    is
  79.            expected to be defined in the file _m_y_p_r_o_j ....bbbbiiiipppp).
  80.  
  81.          ----nnnnoooopppprrrroooojjjjeeeecccctttt
  82.            Ignore the _p_r_o_j_e_c_t....bbbbiiiipppp project file and use default
  83.            project settings instead.  This is useful in
  84.            producing an    application from one or    a few module
  85.            files (for example, for testing) as an alternative
  86.            to generating the entire project.
  87.  
  88.          ----sssshhhhoooowwwwaaaallllllll
  89.            Cause the generated application to show (map) all
  90.            application windows (main windows and dialogs) at
  91.            startup, ignoring whether they are set to be
  92.            initially visible or    not.  If no project is
  93.            specified on    the command line, either by using
  94.            ----pppprrrroooojjjjeeeecccctttt or by specifying a _p_r_o_j_e_c_t ....bbbbiiiipppp file as an
  95.            operand, ddddttttccccooooddddeeeeggggeeeennnn performs as if ----sssshhhhoooowwwwaaaallllllll had been
  96.            specified.  (The ----nnnnoooosssshhhhoooowwwwaaaallllllll option suppresses this
  97.            behavior).
  98.  
  99.          ----nnnnoooosssshhhhoooowwwwaaaallllllll
  100.            Cause the generated application to show at startup
  101.            (map) only those windows (main windows and dialogs)
  102.            whose initially visible attribute is    true.  If a
  103.            project is specified    on the command line, either by
  104.            using ----pppprrrroooojjjjeeeecccctttt or by    specifying a _p_r_o_j_e_c_t ....bbbbiiiipppp file
  105.            as an operand, ddddttttccccooooddddeeeeggggeeeennnn performs as    if ----nnnnoooosssshhhhoooowwwwaaaallllllll
  106.            had been specified.    (The ----sssshhhhoooowwwwaaaallllllll option
  107.            suppresses this behavior).
  108.  
  109.          ----ssss||||----ssssiiiilllleeeennnntttt
  110.            Work    silently, producing no output except error
  111.            messages while generating source code.
  112.  
  113.          ----vvvv||||----vvvveeeerrrrbbbboooosssseeee
  114.            Be more verbose in providing    progress and status
  115.            messages during the generation of source code.
  116.  
  117.      OOOOPPPPEEEERRRRAAAANNNNDDDDSSSS
  118.       The following    operand    is supported:
  119.  
  120.          _f_i_l_e  A pathname of a project or module file.  It is not
  121.            necessary to    specify    the ....bbbbiiiipppp or ....bbbbiiiillll extension for
  122.            any file because ddddttttccccooooddddeeeeggggeeeennnn uses a sequence of
  123.            search algorithms in    the current directory to
  124.            determine what files    should be read in order    to
  125.            satisfy the specified command line.
  126.  
  127.  
  128.  
  129.      Page 2                        (printed 11/11/03)
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))      UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((1111    AAAAuuuugggguuuusssstttt 1111999999995555))))      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))
  137.  
  138.  
  139.  
  140.            If no _f_i_l_e operands are given, ddddttttccccooooddddeeeeggggeeeennnn searches
  141.            the current directory for a project file (a file
  142.            with    a ....bbbbiiiipppp suffix).     If one    is found, it is    used
  143.            as if it had    been specified on the command line.
  144.            If more than    one is found, the first    one
  145.            encountered is used.
  146.  
  147.            If one or more _f_i_l_e operands    are specified,
  148.            ddddttttccccooooddddeeeeggggeeeennnn checks to see if any of them is a project
  149.            file    in the current working directory, and uses the
  150.            first one found.  If    none of    the _f_i_l_e operands are
  151.            project files, then the directory is    searched for a
  152.            project file.  This search is similar to the    no-
  153.            operand case, but is    modified to look for a project
  154.            file    that contain modules corresponding to other
  155.            _f_i_l_e    operands.
  156.  
  157.            Operands other than the project file    are taken to
  158.            be module names.
  159.  
  160.       See the EXAMPLES section for more on the interpretation of
  161.       filename operands and    how the    search features    of ddddttttccccooooddddeeeeggggeeeennnn
  162.       may be used.
  163.  
  164.      RRRREEEESSSSOOOOUUUURRRRCCCCEEEESSSS
  165.       None.
  166.  
  167.      SSSSTTTTDDDDIIIINNNN
  168.       Not used.
  169.  
  170.      IIIINNNNPPPPUUUUTTTT FFFFIIIILLLLEEEESSSS
  171.       All input files are text files in the    BIL format.  See
  172.       _B_I_L(4).
  173.  
  174.      EEEENNNNVVVVIIIIRRRROOOONNNNMMMMEEEENNNNTTTT VVVVAAAARRRRIIIIAAAABBBBLLLLEEEESSSS
  175.       The following    environment variables affect the execution of
  176.       ddddttttccccooooddddeeeeggggeeeennnn:
  177.  
  178.          _L_A_N_G        Provide a default value for    the
  179.                 internationalization variables that    are
  180.                 unset or null.  If _L_A_N_G is unset or    null,
  181.                 the    corresponding value from the
  182.                 implementation-specific default locale
  183.                 will be used.  If any of the
  184.                 internationalization variables contains an
  185.                 invalid setting, the utility behaves as if
  186.                 none of the    variables had been defined.
  187.  
  188.          _L_C__A_L_L        If set to a    non-empty string value,
  189.                 override the values    of all the other
  190.                 internationalization variables.
  191.  
  192.  
  193.  
  194.  
  195.      Page 3                        (printed 11/11/03)
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))      UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((1111    AAAAuuuugggguuuusssstttt 1111999999995555))))      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))
  203.  
  204.  
  205.  
  206.          _L_C__M_E_S_S_A_G_E_S    Determine the locale that is used to
  207.                 affect the format and contents of
  208.                 diagnostic messages    written    to standard
  209.                 error and informative messages written to
  210.                 standard output.
  211.  
  212.          _N_L_S_P_A_T_H        Determine the location of message
  213.                 catalogues for the processing of
  214.                 _L_C__M_E_S_S_A_G_E_S.
  215.  
  216.      AAAASSSSYYYYNNNNCCCCHHHHRRRROOOONNNNOOOOUUUUSSSS EEEEVVVVEEEENNNNTTTTSSSS
  217.       The ddddttttccccooooddddeeeeggggeeeennnn    utility    takes the standard action for all
  218.       signals.
  219.  
  220.      SSSSTTTTDDDDOOOOUUUUTTTT
  221.       When ----hhhheeeellllpppp is    specified, ddddttttccccooooddddeeeeggggeeeennnn writes to standard    output
  222.       a usage message in an    unspecified format.  Otherwise,
  223.       standard output is not used.
  224.  
  225.      SSSSTTTTDDDDEEEERRRRRRRR
  226.       When ----vvvveeeerrrrbbbboooosssseeee    is specified, ddddttttccccooooddddeeeeggggeeeennnn    writes to standard
  227.       error    informational progress messages    and diagnostic
  228.       messages in an unspecified format.  Otherwise, standard
  229.       error    is used    only for diagnostic messages.
  230.  
  231.      OOOOUUUUTTTTPPPPUUUUTTTT FFFFIIIILLLLEEEESSSS
  232.       The ddddttttccccooooddddeeeeggggeeeennnn    utility    produces the following files:
  233.  
  234.          _m_o_d_n_a_m_e____uuuuiiii....cccc
  235.            The primary source code file    for module _m_o_d_n_a_m_e,
  236.            containing C    code to    create the objects in the
  237.            module and establish    connections for    those objects.
  238.  
  239.          _m_o_d_n_a_m_e____uuuuiiii....hhhh
  240.            Declarations    and C externs for module _m_o_d_n_a_m_e.
  241.  
  242.          _m_o_d_n_a_m_e____ssssttttuuuubbbbssss....cccc
  243.            Callback functions for the element handlers
  244.            specific to module _m_o_d_n_a_m_e.
  245.  
  246.          _p_r_o_j_e_c_t....cccc
  247.            If ddddttttccccooooddddeeeeggggeeeennnn    is generating code for a project, this
  248.            file    contains mmmmaaaaiiiinnnn()    plus any callback functions
  249.            that    are common across modules.
  250.  
  251.          _p_r_o_j_e_c_t....hhhh
  252.            If ddddttttccccooooddddeeeeggggeeeennnn    is generating code for a project, this
  253.            file    contains declarations for any callback
  254.            functions and C externs that    are common across
  255.            interfaces.
  256.  
  257.          ....ddddttttccccooooddddeeeeggggeeeennnn....lllloooogggg
  258.  
  259.  
  260.  
  261.      Page 4                        (printed 11/11/03)
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))      UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((1111    AAAAuuuugggguuuusssstttt 1111999999995555))))      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))
  269.  
  270.  
  271.  
  272.            A record of per-module code generation and the date
  273.            and time of each module as it was processed.     This
  274.            data    is required to provide support for the
  275.            ----cccchhhhaaaannnnggggeeeedddd option as part of determining which    files
  276.            need    to be regenerated and which ones do not.
  277.  
  278.       Additional application code should be    added to the
  279.       _m_o_d_n_a_m_e____ssssttttuuuubbbbssss....cccc, _p_r_o_j_e_c_t....cccc and _p_r_o_j_e_c_t....cccc files, as
  280.       appropriate, because their contents are merged across    runs
  281.       of ddddttttccccooooddddeeeeggggeeeennnn.
  282.  
  283.      EEEEXXXXTTTTEEEENNNNDDDDEEEEDDDD DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
  284.       None.
  285.  
  286.      EEEEXXXXIIIITTTT SSSSTTTTAAAATTTTUUUUSSSS
  287.       The following    exit values are    returned:
  288.  
  289.           0     successful completion
  290.  
  291.          >0     an error occurred
  292.  
  293.      CCCCOOOONNNNSSSSEEEEQQQQUUUUEEEENNNNCCCCEEEESSSS OOOOFFFF EEEERRRRRRRROOOORRRRSSSS
  294.       Because code generation involves the sequential production
  295.       of a set of application files, errors    that cause the
  296.       ddddttttccccooooddddeeeeggggeeeennnn utility to exit prematurely    also may result    in
  297.       some module or project source    files having been generated
  298.       while    others were not.  Attempts to build the    application
  299.       from this mix    of new and old generated code produce
  300.       undefined results.
  301.  
  302.      AAAAPPPPPPPPLLLLIIIICCCCAAAATTTTIIIIOOOONNNN UUUUSSSSAAAAGGGGEEEE
  303.       Typically the    ddddttttccccooooddddeeeeggggeeeennnn utility is used indirectly through
  304.       the CDE Application Builder's    Code Generator dialog.    This
  305.       allows application code to be    generated while    the user is
  306.       working with the Application Builder rather than through a
  307.       separate interface or    shell command line.  The Code
  308.       Generator dialog provides a graphical    user interface for
  309.       ddddttttccccooooddddeeeeggggeeeennnn that makes it easy to generate code, build the
  310.       resulting application    and then execute it.
  311.  
  312.       In some cases, however, it may be desirable to use the
  313.       ddddttttccccooooddddeeeeggggeeeennnn utility directly.  A common    example    of this    usage
  314.       is to    employ the code    generator from within an application
  315.       Makefile to produce a    portion    of the application code    from
  316.       pre-existing project or module files.
  317.  
  318.      EEEEXXXXAAAAMMMMPPPPLLLLEEEESSSS
  319.       Run the code generator on the    application defined by the
  320.       project file mmmmyyyypppprrrroooojjjjeeeecccctttt....bbbbiiiipppp:
  321.  
  322.            ddddttttccccooooddddeeeeggggeeeennnn ----pppp mmmmyyyypppprrrroooojjjjeeeecccctttt
  323.  
  324.  
  325.  
  326.  
  327.      Page 5                        (printed 11/11/03)
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))      UUUUNNNNIIIIXXXX SSSSyyyysssstttteeeemmmm VVVV ((((1111    AAAAuuuugggguuuusssstttt 1111999999995555))))      ddddttttccccooooddddeeeeggggeeeennnn((((1111))))
  335.  
  336.  
  337.  
  338.       Run the code generator for the project mmmmyyyypppprrrroooojjjjeeeecccctttt....bbbbiiiipppp,    but
  339.       only generate    code for the module mmmmoooodddduuuulllleeeennnnaaaammmmeeee....bbbbiiiillll:
  340.  
  341.            ddddttttccccooooddddeeeeggggeeeennnn mmmmyyyypppprrrroooojjjjeeeecccctttt....bbbbiiiipppp mmmmoooodddduuuulllleeeennnnaaaammmmeeee
  342.  
  343.       Search the current working directory for a project file that
  344.       references the module    mmmmyyyymmmmoooodddduuuulllleeee and then silently generate
  345.       code for just    that module:
  346.  
  347.            ddddttttccccooooddddeeeeggggeeeennnn ----ssssiiiilllleeeennnntttt mmmmyyyymmmmoooodddduuuulllleeee
  348.  
  349.       In the following example:
  350.  
  351.            ddddttttccccooooddddeeeeggggeeeennnn nnnnaaaammmmeeee1111 nnnnaaaammmmeeee2222
  352.  
  353.       if the project file nnnnaaaammmmeeee1111....bbbbiiiipppp    exists,    it is used and code is
  354.       generated for    module nnnnaaaammmmeeee2222....bbbbiiiillll.  Otherwise, both nnnnaaaammmmeeee1111 and
  355.       nnnnaaaammmmeeee2222    are taken as the name of modules, the current working
  356.       directory is searched    for a project file that    references
  357.       both modules,    and code for those two modules is generated.
  358.  
  359.       Run the code generator, which    searches the current working
  360.       directory for    a project file to be processed,    and generates
  361.       all code associated with that    project:
  362.  
  363.            ddddttttccccooooddddeeeeggggeeeennnn
  364.  
  365.       Generate just    the files associated with the main routine for
  366.       the project mmmmyyyypppprrrroooojjjjeeeecccctttt, namely    mmmmyyyypppprrrroooojjjjeeeecccctttt....cccc and    mmmmyyyypppprrrroooojjjjeeeecccctttt....hhhh:
  367.  
  368.            ddddttttccccooooddddeeeeggggeeeennnn ----mmmmaaaaiiiinnnn ----pppp mmmmyyyypppprrrroooojjjjeeeecccctttt
  369.  
  370.       Search the current working directory for a project file and,
  371.       if one is found, generate code for only those    modules    that
  372.       have changed since the code generator    was last run:
  373.  
  374.            ddddttttccccooooddddeeeeggggeeeennnn ----cccchhhhaaaannnnggggeeeedddd
  375.  
  376.       Generate, for    the project mmmmyyyypppprrrroooojjjjeeeecccctttt....bbbbiiiipppp, code    only for those
  377.       modules among    the set    mmmmoooodddduuuulllleeee1111, mmmmoooodddduuuulllleeee2222 and mmmmoooodddduuuulllleeee3333 that have
  378.       changed since    the last time the code generator was run:
  379.  
  380.            ddddttttccccooooddddeeeeggggeeeennnn ----cccchhhhaaaannnnggggeeeedddd ----pppp mmmmyyyypppprrrroooojjjjeeeecccctttt mmmmoooodddduuuulllleeee1111 mmmmoooodddduuuulllleeee2222 mmmmoooodddduuuulllleeee3333
  381.  
  382.      SSSSEEEEEEEE AAAALLLLSSSSOOOO
  383.       ddddttttbbbbuuuuiiiillllddddeeeerrrr(1),    _B_I_L(4).
  384.  
  385.  
  386.  
  387.  
  388.  
  389.  
  390.  
  391.  
  392.  
  393.      Page 6                        (printed 11/11/03)
  394.  
  395.  
  396.  
  397.